// pages/my/my.js

const myCards = require("../../mock/data/my"); // 模拟数据可以删掉
const utils = require("../../utils/util.js");
Page({
  /**
   * 页面的初始数据
   */
  data: {
    cardId: "",
    menuShow: false,
    scrollLeft: 0,
    detail: myCards[0],
    currentSwiperIndex: 0,
    myCardsLength: 0
  },
  swiperChange(event) {
    console.log(event.detail);
    if (event.detail.source === "touch") {
      this.setData({
        currentSwiperIndex: event.detail.current
      });
    }
  },
  swiperPrev() {
    this.setData({
      currentSwiperIndex: this.data.currentSwiperIndex - 1
    });
  },
  swiperNext() {
    this.setData({
      currentSwiperIndex: this.data.currentSwiperIndex + 1
    });
  },
  orderList() {
    this.setData({
      menuShow: false
    });
    wx.navigateTo({
      url: "/pages/order/order"
    });
  },
  editCard() {
    this.setData(
      {
        menuShow: false
      },
      () => {
        wx.navigateTo({
          url:
            "/pages/edit-card/edit-card?" +
            utils.serializeUrl(Object.assign({}, this.data.detail))
        });
      }
    );
  },
  deleteCard() {
    utils
      .http("/v1/bcs/deleteUserCard.do", {
        cardId: this.data.detail.cardId
      })
      .then(res => {
        if (res.code === "000000") {
          utils.message("删除成功");
          setTimeout(r => {
            wx.navigateBack({
              delta: 1
            });
          }, 1000);
        } else {
          utils.message(res.message);
        }
      })
      .catch(res => {});
  },
  showMenu() {
    // this.setData({
    //   menuShow: true
    // });
  },
  hideMenu() {
    this.setData({
      menuShow: false
    });
  },
  scrollEvent(e) {
    console.log(e);
  },
  sendCard() {},
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function(options) {
    console.log("options", options);
    this.setData({
      cardId: options.cardId,
      detail: options
    });
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function() {},

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function() {
    // 这个页面转发出去不需要带shareTicket，跳转到页面后，通过页面url上的shareCardID添加到用户的待接收名片
    wx.showShareMenu();
    this.setData({
      myCardsLength: getApp().globalData["myCards"].length
    });
    this.updateDetail();
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function() {},

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function() {},

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function() {},

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function() {},

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function(res) {
    return {
      title: this.data.detail.name + "分享了一张名片",
      path: "/pages/index/index?shareCardId=" + this.data.cardId
    };
  },
  updateDetail(again) {
    // 更新用户信息
    utils
      .http("/v1/bcs/getBusinessCardWithHoldState.do", {
        cardId: this.data.cardId
      })
      .then(res => {
        if (res.code === "000000") {
          this.setData({
            detail: res.data.cardInfo
          });
          return false;
        }
        if (res.code === "001101") {
          if (!again) {
            utils
              .wxLogin()
              .then(res => {
                this.updateDetail(true);
              })
              .catch(res => {});
          } else {
            utils.message("获取名片信息失败");
            console.log("获取名片信息失败");
          }
          return false;
        }
        utils.message(res.message || "获取名片信息失败");
        console.log(res.message || "获取名片信息失败");
      })
      .catch(res => {});
  }
});
